const {
  $util,
} = getApp();
const {
  phoneExp,
} = require('../../../common/utils/util.js');
Page({

  /**
   * 页面的初始数据
   */
  data: {
    realname: '', // 姓名
    gender: '', // 性别index
    nat: '', // 民族index
    edu: '', // 学历index
    phone: '', // 手机号
    certificateid: '', // 身份证号
    birthday: '', // 出生日期
    stage: 0, // 申请状态 
    genderarr: [{
      id: 1,
      name: '男',
    }, {
      id: 2,
      name: '女',
    }],
    education: [], // 学历
    nationarr: ['汉族', '蒙古族', '回族', '藏族', '维吾尔族', '苗族', '彝族', '壮族', '布依族', '朝鲜族', '满族', '侗族', '瑶族', '白族', '土家族', '哈尼族', '哈萨克族', '傣族', '黎族', '傈僳族', '佤族', '畲族', '高山族', '拉祜族', '水族', '东乡族', '纳西族', '景颇族', '柯尔克孜族', '土族', '达斡尔族', '仫佬族', '羌族', '布朗族', '撒拉族', '毛南族', '仡佬族', '锡伯族', '阿昌族', '普米族', '塔吉克族', '怒族', '乌孜别克族', '俄罗斯族', '鄂温克族', '德昂族', '保安族', '裕固族', '京族', '塔塔尔族', '独龙族', '鄂伦春族', '赫哲族', '门巴族', '珞巴族', '基诺族'],
    showOrg: false,
    groupid: -1,
    groupname: '',
    directory: [],
    id: 0,
    title: '党组织',
    showInfo: false,
    scrollId: `id0`,
    isFirst: false,
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad() {
    $util.request({
      url: 'entry/wxapp/partyman.partydevelop.applyparty',
      data: {},
      showLoading: true,
      success: (res) => {
        let list = {
          education: res.education,
        };
        if (res.data && res.data.groupid) {
          res.data.stagestr && (list.stagestr = res.data.stagestr);
          res.data.id && (list.sid = res.data.id);
          res.data.realname && (list.realname = res.data.realname);
          res.data.sex && (list.gender = res.data.sex === '1' ? 0 : res.data.sex === '2' ? 1 : '');
          res.data.nation && (list.nat = this.data.nationarr.findIndex(item => res.data.nation === item));
          res.data.education && (list.edu = res.education.findIndex(item => res.data.education == item.id)); // id数据类型不一定是数字1,1A
          res.data.birthday && (list.birthday = res.data.birthday);
          res.data.phone && (list.phone = res.data.phone);
          res.data.certificateid && (list.certificateid = res.data.certificateid);
          res.data.stage && (list.stage = Number(res.data.stage));
          res.data.groupid && (list.groupid = Number(res.data.groupid));
          res.data.groupname && (list.groupname = res.data.groupname);
        } else {
          this.setData({
            isFirst: true,
          })
        }
        this.setData(list);
      },
      fail: (res) => {
        wx.showToast({
          title: res.message,
          icon: 'none',
          success: () => {
            setTimeout(() => {
              res.errno === 1 && wx.navigateBack();
              res.errno === 2 && wx.redirectTo({
                url: '/ws_party_const/pages/auth/index',
              });
            }, 1000);
          },
        });
      },
    });
  },
  bindDateChange(e) {
    const {
      typ,
    } = e.currentTarget.dataset;
    const m = {};
    m[typ] = e.detail.value;
    this.setData(m);
  },
  btnPrevent: false,
  submit() {
    const {
      realname, // 姓名
      gender, // 性别index
      nat, // 民族index
      edu, // 学历index
      phone, // 手机号
      certificateid, // 身份证号
      birthday, // 出生日期
      education,
      genderarr,
      nationarr,
      stage,
      sid = '',
      groupid,
    } = this.data;
    if (stage > 2) return;
    if (realname === '') {
      wx.showToast({
        title: `姓名不能为空`,
        icon: 'none',
      });
      return false;
    }
    if (gender === '') {
      wx.showToast({
        title: `性别不能为空`,
        icon: 'none',
      });
      return false;
    }
    if (nat === '') {
      wx.showToast({
        title: `民族不能为空`,
        icon: 'none',
      });
      return false;
    }
    if (edu === '') {
      wx.showToast({
        title: `学历不能为空`,
        icon: 'none',
      });
      return false;
    }
    if (phone === '') {
      wx.showToast({
        title: `手机号不能为空`,
        icon: 'none',
      });
      return false;
    }
    if (!phoneExp.mobile.test(phone)) {
      wx.showToast({
        title: '请填写正确手机号码',
        icon: 'none',
      });
      return;
    }
    if (certificateid === '') {
      wx.showToast({
        title: `身份证号不能为空`,
        icon: 'none',
      });
      return false;
    }
    if (birthday === '') {
      wx.showToast({
        title: `出生日期不能为空`,
        icon: 'none',
      });
      return false;
    }
    if (groupid === -1) {
      wx.showToast({
        title: `党组织不能为空`,
        icon: 'none',
      });
      return false;
    }
    let param = {
      realname,
      sex: genderarr[gender].id,
      phone,
      nation: nationarr[nat],
      education: education.length ? education[edu].id : '',
      certificateid,
      birthday,
      groupid,
    };
    !this.data.isFirst && sid && (param.id = sid);
    if (this.btnPrevent) return;
    this.btnPrevent = true;
    $util.request({
      url: 'entry/wxapp/partyman.partydevelop.apply',
      data: param,
      success: () => {
        wx.showToast({
          title: '提交成功',
          icon: 'none',
          success: () => {
            setTimeout(() => {
              wx.navigateBack({});
            }, 1000);
          },
        });
      },
      complete: () => {
        this.btnPrevent = false;
      },
    });
  },
  getShowOrg() {
    this.setData({
      showOrg: true,
    });
  },
  getSureOrg(e) {
    this.setData({
      groupid: e.detail.id,
      groupname: e.detail.name,
    });
  },
});